/**
 *  Copyright (c) 2011, IPC Studio, USTC, All rights reserved
 *  FileName: CmdParam.h
 *  Author: chengximing1989@gmail.com
 *  DateCreated: 2011-8-8
 *  Brief: class CmdParam definition, CmdParam is to be used to parse the cmd commands which user input
 */

#ifndef CMDPARAM_H_
#define CMDPARAM_H_

#include "common.h"

class CmdParam
{
public:
	CmdParam();
	/*virtual */~CmdParam();

	/** Init command parameters analyzation
	    @remarks
			This function may call ParseParam function if all input command parameters are
			correct, if error(s) happen, it will print message correspondingly.
	*/
	bool InitParam(int argc, char** argv);

	string				m_sifilename;		// input lyrics file name/path
	string				m_sofilename;		// output file name/path
	int					m_itime;			// input time in ms
	bool                m_bprintheadinfo;
	bool				m_bprintall;
	bool				m_bprinthelp;
	bool				m_bprintversion;

protected:
	/** Parse command parameters
		@remarks
			This function can analyze the correct parameters, all parameters load to RAM
			with this function.
	*/
	bool ParseParam(int argc, char** argv);
};

#endif /* CMDPARAM_H_ */
